home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 6 / FM Towns Free Software Collection 6.iso / ms_dos / txf / src / txf.h < prev    next >
C/C++ Source or Header  |  1993-07-08  |  8KB  |  302 lines

  1. /**************** txf.h *******************/
  2.  
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. #include <string.h>
  6. #include <ctype.h>
  7. #include <jctype.h>
  8. #include <jstring.h>
  9. #include <dos.h>
  10. #include <io.h>
  11. #include <fcntl.h>
  12.  
  13. #define NUL 0
  14. #define TAB 0x09
  15. #define RET 0x0A
  16. #define TRUE  1
  17. #define FALSE 0
  18.  
  19. #define MAX_STR 12
  20. #define EX_MAX 300
  21. #define PARA_MAX 1000
  22. #define KFL_MAX 160
  23. #define KQ__MAX 80
  24. #define NP_DEL  4
  25.  
  26. #ifdef MAIN
  27. int  tmpinfile=-1;
  28. char inputfile[80];        /*    -i    */
  29. char outputfile[80];    /*    -o    */
  30. char wcfile[80];        /*    -io    */
  31. char bakfile[80];        /*    -rb    */
  32. int  tabsize=8;            /*    -t    */
  33. int  tabx=0;            /*    -x    tab展開    */
  34. int  maxc=76;            /*    -l    */
  35. int  cent=0;            /*    -c    */
  36. int  left=-1;            /*    -ml    */
  37. int  right=-1;            /*    -mr    */
  38. int  retflg=0;            /*    -r    */
  39. int  quoteflg=0;        /*    -q    引用文    */
  40. int  base=-1;            /*    -b    */
  41. char tfile[2][64];        /*    -d    */
  42. int  exflg=0;            /*    -e    */
  43. int  format=1;            /*    -n,-f    */
  44. int  viewmode=0;        /*    -v    */
  45. char sep=0x22;            /*    -s    */
  46. int  removeeofflg=0;    /*    -rz    */
  47. int  removebakfile=0;    /*    -rb    */
  48. int  useoldex=0;        /*    -ep,-es    */
  49. int  setline=0;            /*  -z    */
  50.  
  51. char *exold[EX_MAX],*exnew[EX_MAX],*exattr[EX_MAX];
  52. char *exptr[EX_MAX],*exattrptr[EX_MAX];                        /*    -e    */
  53. char *para[PARA_MAX];
  54. char *kl,*kf,*kq;
  55. #if 0
  56. char kl[KFL_MAX]="),.>}]。、!? 、。,.)]}>」」》』】!? ";    /*    -kl    */
  57. char kf[KFL_MAX]="([{「([{<「《『【";                        /*    -kf    */
  58. char kq[KQ__MAX]=">>";                                            /*    -kq    */
  59. #endif
  60.  
  61. int quote=0;
  62. char *basedir;
  63. FILE *input,*output;
  64.  
  65. long int totalret=0;    /*    used by LCX    */
  66. long int totalretx=0;    /*    used by LCX    */
  67. long int totalsize=0;    /*    used by LCX    */
  68.  
  69. #if !TXFL
  70.  
  71. char sfstr[MAX_STR][48]={    "\n*:お知らせ            *:掲示板      *:電子会議",
  72.                             "\nFORUM:","\n>GO ",
  73.                             "\n>LIB ","\nLIB:","】(DL ",
  74.                             "\n★FTOWNS1★","\n★FTOWNS2★",
  75.                             "\nID (改行のみ:自分のHP)\r\n:",
  76.                             "\nHP:",
  77.                             "\nID (改行のみ:自分のパティオ)\r\n:",
  78.                             "\nPATIO:"
  79.                             };
  80. char logstr_mes1[30]="%%   %%%%% ( %%%)   %%/%%   ";
  81. char logstr_mes2[15]="- ^4MES(%%):";
  82. char logstr_mes3[41]="%%%/%%%   ***%%%%%  $$$$$$$$$$$$$$$$  ";
  83. char logstr_mes4[42]="%%%%%/%%%%% ***%%%%%  $$$$$$$$$$$$$$$$ ";
  84. char logstr_dlib[42]="%%%%$ ***%%%%% %%/%%/%% %%%%%%% %%%% * ";
  85. char logstr_wftowns[5]="  #%";
  86. char logstr_hp[40]="%%%  [%%/%%/%% %%:%%]  ***%%%%%      ";
  87. char logstr_mail[44]="%% $$$$$$$$$$$$$$$$$  ***%%%%%  %%/%% %%:%%";
  88. char logstr_ffmtop[22]="%%/%%[^1]^3(DL%%-%%%";
  89.  
  90. /*
  91.  
  92. - FFMHOB  MES(20):【交 流】自己紹介の場、『無節荘』第10館 92/05/13 -
  93. - FTOWNS1  MES( 7):Gamer’s Q&A(2) 92/05/13 -
  94. 20     919 (   5)   05/13   【交 流】自己紹介の場、『無節荘』第10館
  95. 005/005   NBE00503  山口 靖      ストック会議室にも
  96. ( 3)   92/09/25 23:08
  97. 01453/01453 PFG02442  中谷 友彦    テスト♪てすと♪
  98. ( 2)   92/09/22 22:56
  99.  
  100. ID (改行のみ:自分のHP)
  101. :PEE01244
  102. パスワード
  103. 20     999 (   0)   05/16   [交 流]自己紹介の場、『無節荘』第10館
  104.  250  PFG02442 92/04/05   25408   25 B TXF136E .EXE テキストファイル フォーマッタ Ver1.36e
  105. 12/12[TOWNS] ぼむぼむ                 (DL 5-433)
  106. 12/08[TOWNS]  背景画ランダムセレクター     (DL 4-222)
  107. 120  [92/05/16 21:14]  PEE01244      CATLOG.EXP使ってみました<Yama-chan
  108.  
  109. */
  110.  
  111. char *pfstr[MAX_STR] = {
  112.     NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  113.  
  114. long int log_tline=0;
  115. char log_fname[16]="UNKNOWN";
  116. char log_pname[16]="";
  117. char log_idstr[12]="        ";
  118. char log_libstr[4];
  119. int  log_downno;
  120. char log_downname[16]="";
  121. char log_docfile[16]="";
  122. char log_titlestr[48];
  123. char log_resstr[16]="";
  124. char log_resp[12]="        ";
  125. char log_handle[20]="                ";
  126. int  log_hpstyle = 0;
  127. int  log_mesno;
  128. char log_reply[8];
  129. char *log_bufptr;
  130.  
  131. char filechr[32]={0,0,0,0,0x5f,0x0c6,0x0ff,0x0c0,0x0ff,0x0ff,0x0ff,0x0e3,0x0ff,
  132.                     0x0ff,0x0ff,0x0f6,0,0,0,0,0x03,0x0ff,0x0ff,0x0ff,0x0ff,
  133.                     0x0ff,0x0ff,0x0ff,0,0,0,0};
  134.  
  135. char npcut_front[4]  ={0x1b,0x26,0x36,0x41};
  136. char npcut_tellstr[5]={0x1b,0x26,0x36,0x40,0};
  137. char npcut_nifend[21]={ 0x18,0x1f,0x40,0x40,0x0e,0x20,0x7f,0x7f,0x21,0x4c,
  138.                         0x3e,0x44,0x3c,0x40,0x40,0x40,0x40,0x20,0x68,0x40,0};
  139. char npcut_niffirst[9]={0x1b,0x23,0x33,0x1b,0x33,0x1b,0x26,0x32,0};
  140. char npcut_weather[10]={0x1b,0x2d,0x57,0x0e,0x21,0x4c,0x20,0x68,0x40,0};
  141. int weatherflg = 0;
  142. int make_val = 0 ;
  143. #endif
  144.  
  145. time_t ftime[2];
  146.  
  147. /* use commandfile */
  148.  
  149. char *fbuf;
  150. int fbufsize=0,fbufptr=0;
  151.  
  152. #endif
  153.  
  154. extern int  tmpinfile;
  155. extern char inputfile[80];        /*    -i    */
  156. extern char outputfile[80];    /*    -o    */
  157. extern char wcfile[80];        /*    -io    */
  158. extern char bakfile[80];        /*    -rb    */
  159. extern int  tabsize;            /*    -t    */
  160. extern int  tabx;            /*    -x    tab展開    */
  161. extern int  maxc;            /*    -l    */
  162. extern int  cent;            /*    -c    */
  163. extern int  left;            /*    -ml    */
  164. extern int  right;            /*    -mr    */
  165. extern int  retflg;            /*    -r    */
  166. extern int  quoteflg;        /*    -q    引用文    */
  167. extern int  base;            /*    -b    */
  168. extern char tfile[2][64];        /*    -d    */
  169. extern int  exflg;            /*    -e    */
  170. extern int  format;            /*    -n,-f    */
  171. extern int  viewmode;        /*    -v    */
  172. extern char sep;            /*    -s    */
  173. extern int  removeeofflg;    /*    -rz    */
  174. extern int  removebakfile;    /*    -rb    */
  175. extern int  useoldex;        /*    -ep,-es    */
  176. extern int  setline;        /*  -z    */
  177.  
  178. extern char *exold[],*exnew[],*exattr[];
  179. extern char *exptr[],*exattrptr[];/*    -e    */
  180. extern char *para[];
  181.  
  182. extern char *kl,*kf,*kq;
  183. #if 0
  184. extern char kl[];            /*    -kl    */
  185. extern char kf[];                /*    -kf    */
  186. extern char kq[];                /*    -kq    */
  187. #endif
  188.  
  189. extern int  quote;
  190. extern char *basedir;
  191. extern FILE *input,*output;
  192. extern long int totalret;    /*    used by LCX    */
  193. extern long int totalretx;    /*    used by LCX    */
  194. extern long int totalsize;    /*    used by LCX    */
  195.  
  196. #if !TXFL
  197. extern char sfstr[MAX_STR][48];
  198. extern char *pfstr[MAX_STR];
  199. extern char *dlib_bufptr;
  200. extern long int log_tline;
  201. extern char log_fname[16];
  202. extern char log_pname[16];
  203. extern char log_idstr[12];
  204. extern char log_libstr[4];
  205. extern int  log_downno;
  206. extern char log_downname[16];
  207. extern char log_docfile[16];
  208. extern char log_titlestr[48];
  209. extern char log_resstr[16];
  210. extern char log_resp[12];
  211. extern char log_handle[20];
  212. extern int  log_hpstyle;
  213. extern int  log_mesno;
  214. extern char log_reply[8];
  215. extern char *log_bufptr;
  216.  
  217. extern char logstr_mes1[30];
  218. extern char logstr_mes2[15];
  219. extern char logstr_mes3[41];
  220. extern char logstr_mes4[42];
  221. extern char logstr_dlib[42];
  222. extern char logstr_wftowns[5];
  223. extern char logstr_hp[40];
  224. extern char logstr_mail[44];
  225. extern char logstr_ffmtop[22];
  226.  
  227. extern char filechr[32];
  228. extern char npcut_front[4];
  229. extern char npcut_tellstr[5];
  230. extern char npcut_nifend[21];
  231. extern char npcut_niffirst[9];
  232. extern char npcut_weather[10];
  233. extern int  weatherflg;
  234. extern int  make_val;
  235.  
  236. #endif
  237.  
  238. extern time_t ftime[2];
  239. extern char *fbuf;
  240. extern int  fbufsize,fbufptr;
  241.  
  242. /*  external function */
  243.  
  244. char *get_filename(char *wildcard);
  245. void lcx(char *lcxinputfile);
  246. void lcxdriver(char **param);
  247. int  hex(char *str);
  248. char *ftrans(char *form);
  249. int  quotechk(int chr1,int chr2);
  250. char *strspc(char *ptr,char find);
  251. char *ktrans(char *str);
  252. void init_allswitch();
  253. void gettmpfile();
  254. void exchange(char *oldfile,char *newfile);
  255. void exchangedriver();
  256. void old_exchange(char *st1,char *st2,char *oldfile,char *newfile);
  257. void old_exchangedriver();
  258. void setleft();
  259. void setleft0();
  260. int  findret(int i,int j,int next1,int next2);
  261. int  putret(int i,int old,int chr,int next1,int next2);
  262. int  putspace(int num,FILE *file);
  263. void txform(void);
  264. void swchk(int count,char **val);
  265. void mktfilename();
  266. void input_to_output();
  267. void tfileopen(int i);
  268. int  wcchk();
  269. void errexit(char *errmes);
  270. void credit(char *name);
  271. void setdefault();
  272. void init(char *name);
  273. void txf();
  274. int  main(int argc,char **argv);
  275. void read_def(char *own);
  276. void read_commandfile(char *commandfile);
  277.  
  278. void savesw(int base);
  279. void mes_forum(int type);
  280. void mesfindstr();
  281. void mes();
  282. void mesinit();
  283. void mesdriver(char **val);
  284. void get_forum(int type);
  285. void get_libno(int type);
  286. void get_titlestr();
  287. void meschk(int style);
  288. void dlibchk(int style);
  289. void ffmtopchk();
  290. void hpchk();
  291. void mailchk();
  292. int  matchstr(char *form, char *txtptr);
  293. int  linestyle();
  294. void logfindstr();
  295. void log();
  296. void loginit();
  297. void logdriver(char **val);
  298. void removeeof();
  299. void npcutdriver(char **val);
  300.  
  301.